Automatic call distribution systems are known. Such systems are typically used, for example, within private branch telephone exchanges as a means of distributing telephone calls among a group of agents. While the automatic call distributor may be a separate part of a private branch telephone exchange, often the automatic call distributor is integrated into and is an indistinguishable part of the private branch telephone exchange.
Often an organization disseminates a single telephone number to its customers and to the pubic in general as a means of contacting the organization. As calls are directed to the organization from the public switch telephone network, the automatic call distribution system directs the calls to its agents based upon some type of criteria. For example, where all agents are considered equal, the automatic call distributor may distribute the calls based upon which agent has been idle the longest. The agents that are operatively connected to the automatic call distributor may be live agents, and/or virtual agents. Typically, virtual agents are software routines and algorithms that are operatively connected and/or part of the automatic call distributor.
Automatic call distributors are utilized in communications handling centers, such as telephone call centers, that forward incoming communications, such as telephone calls, for processing by one of several associated call-handling agents. Other communications centers may be used to forward voice-over-internet protocol communications; electronic mail messages; facsimiles or the like, to associated handling agents.
Telephone call centers, for example, are often used to dispatch emergency services, as telemarketing sales centers, as customer service centers, etc. to automatically distribute received calls. Each incoming call may have a number of handling requirements, depending on, for example, the nature of the call, the originating call area, and the language of the call. Agents, on the other hand, each have abilities to process calls having certain handling requirements. Typically, agents are able to process one or more call types. For example, agents are typically trained to process certain call subject matters and certain call languages.
In known telephone call centers, computerized automatic call distributors place incoming telephone calls, of a particular type, requiring defined skills, in queues of like calls. Appropriate agents have skills necessary to process calls in the queues, and are assigned to such queues. Agents are often assigned to multiple queues, reflective of their particular handling skills. Typically, this is done to increase the handling capacity of the center by making improved use of available communications handling resources.
Quite often, agents may handle calls related to one or more subject areas, and possess varied attributes that are relevant to all subject areas they are capable of handling. For example, a telephone call center agent may speak multiple languages, and may therefore be able to process telephone calls relating to a particular subject matter in all these languages. One simple approach used to deal with multiple agent attributes is to create and administer individual queues, each of which takes into account the subject matter and the attributes of the agent. This, however, is administratively very cumbersome.
Other known telephone call centers use agent-skill indicators, associated with agents in order to connect calls. In such centers, a call is connected to an agent having an agent-skill indicator matching that of the call, within a group of agents. Agents, however, are typically only assignable to only one, and typically only a single agent-skill indicator is used to connect the call. Disadvantageously, such call centers do not use agent attributes across different groups. This may lead to an inefficient utilization of call center resources. Moreover, these communications handling centers do not allow for easy administration and re-assignment of agents to queues, while maintaining agent skill-sets.
One concern in designing an automatic call distributor system is ensuring that calls are efficiently routed to an agent, so as to minimize the amount of time that any particular call is placed on hold. One basic technique of minimizing on-hold time is to employ a first-in/first-out call handling technique. The first-in/first-out technique requires that calls be routed to the next available agent in the order in which the calls are received. However, in some automatic call distributor systems the agents are specialized in handling particular types of calls, so the first-in/first-out technique is not appropriate. For example in a product support department of a software facility, agents might be grouped according to specialized expertise, so that a first group is knowledgeable in word processing, a second group is knowledgeable in a database program, and a third group is knowledgeable in a spreadsheet program. Utilizing a first-in/first-out technique in such a situation is inappropriate, because a caller with a question regarding the word processing program may be routed to an agent having specialized knowledge regarding the database program or the spreadsheet program, rather than being routed to an agent with specialized knowledge in the word processing program.
The focus in the management of calls has been upon maximizing availability to customers, so as to achieve an acceptable profit margin in a competitive environment of customer service. Call management approaches that increase revenue may lead to savings for customers.
Most present-day call-distribution algorithms focus on being “fair” to callers and to agents. This fairness is reflected by the standard first-in, first-out call to most-idle-agent assignment algorithm. Skills-based routing improves upon this basic algorithm in that it allows each agent to be slotted into a number of categories based on the agent's skill types and levels.
The primary objective of call-distribution algorithms is to ultimately maximize call center performance. That may involve minimizing cost, maximizing call throughput, and/or maximizing revenue, among others. For example, when a new call arrives, the call should be handled by an agent who either has the ability to produce the most revenue or can handle the call in the shortest amount of time. Also, when an agent becomes available to handle a new call, the agent should handle either the call that has the possibility of generating the most revenue or the call that the agent is most efficient in handling.
Although known automatic call distribution systems provide many features, there is still a need in the prior art for a system that provides the ability for an agent or an inbound caller to solicit assistance from a group of similarly or higher skilled agents, especially in remote environments where, in the case of an agent, the agent does not have direct contact with other agents. These known systems do not have the functionality to allow agents and inbound callers to “chat” in a single environment. This results in a loss of efficiency in the amount of time it takes to obtain a response to a question. Furthermore, in the computerized “rooms” that are dedicated to a subject area, as the number of participants becomes greater, it is difficult to follow the thread of a transaction. To handle large chat sessions, providers, such as AOL, place participants into rolls, isolated from other chat members, and thereby limit the availability to find the solution to an inquiry.
Thus, there is a need in the prior art for a method and system which overcomes the disadvantages and provides the ability to match skill sets of an inquiring agent or inbound chat members with similar skill sets of agents.